跳到主要内容

4.1 仿真流程

1、创建.v文件,命名为led_tb。

alt text
图4.1 创建.v文件,命名为led_tb

2、将测试代码输入测试文件中,代码如下:

`timescale 1ns/100ps

module led_tb();
reg sys_clk;
wire [2:0] RGB_led;

initial sys_clk=0;

always #10 sys_clk=~sys_clk;

led u_led(
.sys_clk (sys_clk),
.RGB_led (RGB_led)
);

endmodule

3、这里需要注意测试文件只是用来仿真的,很多语句是不可综合的,所以要设置文件的属性。右击工程目录里的led_tb文件,选择Prooerties,

alt text
图4.2 选择Prooerties

会弹出一个属性窗口,弹出一个属性窗口,把测试文件属性值改为simulation表示只做仿真。

alt text
图4.3 把测试文件属性值改为simulation

4、选择菜单栏Tools→Simulation Wizard或 工具栏中Simulation Wizard按钮,进入仿真设置界面。

alt text
图4.4 进入仿真设置界面

5、直接点击Next。

alt text
图4.5 点击Next

6、创建仿真文件的工程及其路径,选择仿真的阶段,这里是功能仿真,所以只能选RTL级。如果没有led_tb这个文件夹,点击Next,然后点击Yes会自动创建。

alt text
图4.6 创建仿真文件

alt text
图4.7 点击Yes自动创建

7、选择添加或者删除所要仿真的源文件和测试文件,点击Next。

alt text
图4.8 选择添加或者删除

8、仿真工程列表,如果有多个测试文件可以选择顶层测试文件。

alt text
图4.9 选择顶层测试文件

9、仿真工程项目创建完成,如果下方选项确定,点击Finish,将会打开Modelsim。

alt text
图4.10 仿真工程项目创建完成

10、选择Compile→Compile All,等待完成后工程目录的Status状态会变成绿色的√。

alt text
图4.11 选择Compile→Compile All

alt text
图4.12 Status状态变成绿色

11、选择菜单栏的Simulate→Start Simulation,

alt text
图4.13 选择Simulate→Start Simulation

alt text
图4.14 选择led_tb文件

12、右击需要观察的信号,点击Add Wave,这样就将对应信号添加至Wave窗口。

alt text
图4.15 点击Add Wave

13、弹出的Wave窗口如下,选择工具栏中Restart按钮,在弹出的Restart窗口点击OK,复位仿真Wave窗口。

alt text
图4.16 点击OK

14、修改工具栏中仿真时间,点击工具栏中Run按钮,进行仿真,仿真波形如下,仿真完成。(由于例程是三色灯一秒切换一个颜色,而仿真时间太短,所以RGB_led信号不会切换。)

alt text
图4.17 仿真完成